#ifndef __IR_DECODER_H_INCLUDED__
#define __IR_DECODER_H_INCLUDED__

#include <boost/shared_ptr.hpp>

#define ID_MCEIR_KEYCODE    0x01
#define ID_SONY_KEYCODE     0x02
#define ID_NEC_KEYCODE      0x03
#define ID_RC5_KEYCODE      0x04
#define ID_RC6_KEYCODE      0x05
#define ID_REC80_KEYCODE    0x06

class IIrDecoder {
public:
	virtual ~IIrDecoder () {}
	virtual bool process ( unsigned long * data, size_t count ) = 0;
	virtual void reset() = 0;
};
typedef boost::shared_ptr<IIrDecoder> IIrDecoderPtr;


#endif